export default {
  menu: {
    knowledgeBase: "知识库",
    chat: "对话",
    createChat: "创建对话",
    tenant: "账户信息",
    settings: "系统设置",
    logout: "退出登录",
    uploadKnowledge: "上传知识",
    deleteRecord: "删除记录",
    newSession: "新会话",
    confirmLogout: "确定要退出登录吗？",
    systemInfo: "系统信息",
  },
  knowledgeBase: {
    title: "知识库",
    list: "知识库列表",
    fileContent: "文件内容",
    detail: "知识库详情",
    create: "创建知识库",
    edit: "编辑知识库",
    delete: "删除知识库",
    name: "名称",
    description: "描述",
    files: "文件",
    settings: "设置",
    documentCategoryTitle: "文档分类",
    faqCategoryTitle: "问题分类",
    untagged: "未分类",
    tagUpdateSuccess: "标签更新成功",
    tagSearchTooltip: "搜索标签",
    category: "分类",
    tagCreateAction: "新建标签",
    tagSearchPlaceholder: "输入标签名称关键字",
    tagNamePlaceholder: "请输入标签名称",
    tagNameRequired: "请先输入标签名称",
    tagCreateSuccess: "标签创建成功",
    tagEditSuccess: "标签更新成功",
    tagDeleteTitle: "删除标签",
    tagDeleteDesc: '确定删除标签"{name}"？已关联的 FAQ 将被标记为未分类',
    tagDeleteSuccess: "标签已删除",
    tagEditAction: "重命名",
    tagDeleteAction: "删除",
    tagEmptyResult: "未找到匹配的标签",
    tagLabel: "分类",
    tagPlaceholder: "请选择分类",
    noTags: "暂无分类",
    upload: "上传文件",
    uploadSuccess: "文件上传成功！",
    uploadFailed: "文件上传失败！",
    fileExists: "文件已存在",
    uploadingMultiple: "正在上传 {total} 个文件...",
    uploadAllSuccess: "成功上传 {count} 个文件！",
    uploadPartialSuccess: "上传完成：成功 {success} 个，失败 {fail} 个",
    uploadAllFailed: "所有文件上传失败",
    uploadingFolder: "正在上传文件夹中的 {total} 个文件...",
    uploadingValidFiles: "正在上传 {valid}/{total} 个有效文件...",
    noValidFiles: "没有有效的文件",
    noValidFilesInFolder: "文件夹中的 {total} 个文件均不支持",
    noValidFilesSelected: "选中的文件均不支持",
    hiddenFilesFiltered: "已过滤 {count} 个隐藏文件",
    imagesFilteredNoVLM: "已过滤 {count} 个图片文件(未启用VLM)",
    invalidFilesFiltered: "已过滤 {count} 个不支持的文件",
    unsupportedFileType: "不支持的文件格式",
    failedFilesList: "失败文件列表：",
    andMoreFiles: "...及其他 {count} 个文件",
    duplicateFilesSkipped: "已忽略 {count} 个重复文件",
    uploadFile: "上传文件",
    uploadFileDesc: "支持 PDF、Word、TXT 等",
    importURL: "导入网页",
    importURLDesc: "通过URL链接导入",
    importURLTitle: "导入网页",
    manualCreate: "手动创建",
    manualCreateDesc: "直接编写文档内容",
    urlRequired: "请输入URL",
    invalidURL: "请输入有效的URL",
    urlImportSuccess: "URL导入成功！",
    urlImportFailed: "URL导入失败！",
    urlExists: "该URL已存在",
    urlLabel: "URL地址",
    urlPlaceholder: "请输入网页URL，例如：https://example.com",
    urlTip: "支持导入各类网页内容，系统会自动提取和解析网页中的文本内容",
    typeURL: "网页",
    typeManual: "手动创建",
    typeFile: "文件",
    urlSource: "来源网址",
    documentTitle: "文档标题",
    webContent: "网页内容",
    documentContent: "文档内容",
    importTime: "导入时间",
    createTime: "创建时间",
    characters: "字符",
    segment: "片段",
    chunkCount: "共 {count} 个片段",
    viewOriginal: "查看原文件",
    viewChunks: "查看分块",
    originalFileNotSupported: "该文件类型不支持原文件展示，请下载查看",
    loadOriginalFailed: "加载原文件内容失败",
    questions: "问题",
    generatedQuestions: "生成的问题",
    confirmDeleteQuestion: "确定要删除这个问题吗？删除后将同时移除对应的向量索引。",
    legacyQuestionCannotDelete: "旧格式问题无法删除，请重新生成问题",
    docActionUnsupported: "当前知识库类型不支持该操作",
    notInitialized:
      "该知识库尚未完成初始化配置，请先前往设置页面配置模型信息后再上传文件",
    getInfoFailed: "获取知识库信息失败，无法上传文件",
    missingId: "缺少知识库ID",
    deleteFailed: "删除失败，请稍后再试！",
    quickActions: "快捷操作",
    createKnowledgeBase: "创建知识库",
    knowledgeBaseName: "知识库名称",
    enterName: "输入知识库名称",
    embeddingModel: "嵌入模型",
    selectEmbeddingModel: "选择嵌入模型",
    summaryModel: "摘要模型",
    selectSummaryModel: "选择摘要模型",
    rerankModel: "重排序模型",
    selectRerankModel: "选择重排序模型（可选）",
    createSuccess: "知识库创建成功",
    createFailed: "知识库创建失败",
    updateSuccess: "知识库更新成功",
    updateFailed: "知识库更新失败",
    deleteSuccess: "知识库删除成功",
    deleteConfirm: "确定要删除此知识库吗？",
    fileName: "文件名称",
    fileSize: "文件大小",
    uploadTime: "上传时间",
    status: "状态",
    actions: "操作",
    processing: "处理中",
    completed: "已完成",
    failed: "失败",
    noFiles: "暂无文件",
    dragFilesHere: "拖拽文件至此或",
    clickToUpload: "点击上传",
    supportedFormats: "支持格式",
    maxFileSize: "最大文件大小",
    viewDetails: "查看详情",
    downloadFile: "下载文件",
    deleteFile: "删除文件",
    confirmDeleteFile: "确定要删除此文件吗？",
    totalFiles: "文件总数",
    totalSize: "总大小",
    newSession: "新会话",
    editDocument: "编辑文档",
    draft: "草稿",
    draftTip: "暂存内容，未参与检索",
    untitledDocument: "未命名文档",
    deleteDocument: "删除文档",
    parsingFailed: "解析失败",
    parsingInProgress: "解析中...",
    generatingSummary: "生成摘要中...",
    deleteConfirmation: "删除确认",
    confirmDeleteDocument: '确认删除文档"{fileName}"，删除后将无法恢复',
    cancel: "取消",
    confirmDelete: "确认删除",
    selectKnowledgeBaseFirst: "请先选择知识库",
    sessionCreationFailed: "创建会话失败",
    sessionCreationError: "会话创建错误",
    settingsParsingFailed: "设置解析失败",
    fileUploadEventReceived:
      "收到文件上传事件，上传的知识库ID：{uploadedKbId}，当前知识库ID：{currentKbId}",
    matchingKnowledgeBase: "知识库匹配，开始更新文件列表",
    routeParamChange: "路由参数变化，重新获取知识库内容",
    fileUploadEventListening: "监听文件上传事件",
    apiCallKnowledgeFiles: "直接调用API获取知识库文件列表",
    responseInterceptorData:
      "由于响应拦截器已返回data，result是响应数据的一部分",
    hookProcessing: "按照useKnowledgeBase hook方法处理",
    errorHandling: "错误处理",
    priorityCurrentPageKbId: "优先使用当前页面的知识库ID",
    fallbackLocalStorageKbId:
      "如果当前页面没有知识库ID，尝试从localStorage的设置中获取知识库ID",
    createNewKnowledgeBase: "创建知识库",
    uninitializedWarning:
      "部分知识库未初始化，需要先在设置中配置模型信息才能添加知识文档",
    initializedStatus: "已初始化",
    notInitializedStatus: "未初始化",
    needSettingsFirst: "需要先在设置中配置模型信息才能添加知识",
    documents: "文档",
    configureModelsFirst: "请先在设置中配置模型信息",
    confirmDeleteKnowledgeBase: "确认删除此知识库？",
    createKnowledgeBaseDialog: "创建知识库",
    enterNameKb: "输入名称",
    enterDescriptionKb: "输入描述",
    createKb: "创建",
    deleted: "已删除",
    deleteFailedKb: "删除失败",
    noDescription: "无描述",
    emptyKnowledgeDragDrop: "知识为空，拖放上传",
    pdfDocFormat: "pdf、doc 格式文件，不超过10M",
    textMarkdownFormat: "text、markdown格式文件，不超过200K",
    dragFileNotText: "请拖拽文件而不是文本或链接",
    searchPlaceholder: "搜索知识库...",
    docSearchPlaceholder: "搜索文档名称...",
    fileTypeFilter: "文件类型",
    allFileTypes: "全部类型",
    noMatch: "未找到匹配的知识库",
    noKnowledge: "暂无可用知识库",
    loadingFailed: "加载知识库失败",
  },
  chat: {
    title: "对话",
    newChat: "新对话",
    inputPlaceholder: "请输入您的消息...",
    send: "发送",
    thinking: "思考中...",
    regenerate: "重新生成",
    copy: "复制",
    delete: "删除",
    reference: "引用",
    noMessages: "暂无消息",
    waitingForAnswer: "等待回答...",
    cannotAnswer: "抱歉，我无法回答这个问题。",
    summarizingAnswer: "总结答案中...",
    loading: "加载中...",
    enterDescription: "输入描述",
    referencedContent: "引用了 {count} 个相关资料",
    deepThinking: "深度思考完成",
    knowledgeBaseQandA: "知识库问答",
    askKnowledgeBase: "向知识库提问",
    sourcesCount: "{count} 个来源",
    pleaseEnterContent: "请输入内容！",
    pleaseUploadKnowledgeBase: "请先上传知识库！",
    replyingPleaseWait: "正在回复，请稍后再试！",
    createSessionFailed: "创建会话失败",
    createSessionError: "创建会话出错",
    unableToGetKnowledgeBaseId: "无法获取知识库ID",
    summaryInProgress: "正在总结答案……",
    thinkingAlt: "正在思考",
    deepThoughtCompleted: "已深度思考",
    deepThoughtAlt: "深度思考完成",
    referencesTitle: "参考了{count}个相关内容",
    referenceIconAlt: "参考内容图标",
    chunkIdLabel: "片段ID:",
    documentIdLabel: "文档ID:",
    noPlanSteps: "未提供具体步骤",
    chunkIndexLabel: "片段 #{index}",
    chunkPositionLabel: "(位置: {position})",
    noRelatedChunks: "没有找到相关片段",
    noSearchResults: "没有找到搜索结果",
    relevanceHigh: "高相关",
    relevanceMedium: "中相关",
    relevanceLow: "低相关",
    relevanceWeak: "弱相关",
    webSearchNoResults: "未找到搜索结果",
    otherSource: "其他来源",
    webGroupIntro: "以下 {count} 条内容来自",
    graphConfigTitle: "图谱配置",
    entityTypesLabel: "实体类型:",
    relationTypesLabel: "关系类型:",
    graphResultsHeader: "找到 {count} 条相关结果",
    graphNoResults: "未找到相关的图谱信息",
    unknownLink: "未知链接",
    contentLengthLabel: "长度 {value}",
    notProvided: "未提供",
    promptLabel: "提示词",
    errorMessageLabel: "错误信息",
    summaryLabel: "总结",
    rawTextLabel: "原始文本",
    collapseRaw: "收起原文",
    expandRaw: "展开原文",
    noWebContent: "未获取到网页内容",
    lengthChars: "{value} 字",
    lengthThousands: "{value} 千字",
    lengthTenThousands: "{value} 万字",
    sqlQueryExecuted: "执行的 SQL 查询:",
    sqlResultsLabel: "返回结果:",
    rowsLabel: "行",
    columnsLabel: "列",
    noDatabaseRecords: "未找到匹配的记录",
    nullValuePlaceholder: "<NULL>",
    documentTitleLabel: "文档标题:",
    chunkCountLabel: "片段数量:",
    chunkCountValue: "{count} 个片段",
    documentDescriptionLabel: "文档描述:",
    documentStatusLabel: "处理状态:",
    documentSourceLabel: "来源:",
    documentFileLabel: "文件信息:",
    documentMetadataLabel: "元数据",
    documentInfoSummaryLabel: "文档信息",
    documentInfoCount: "成功 {count} / 请求 {requested}",
    documentInfoErrors: "错误详情",
    documentInfoEmpty: "暂无文档信息",
    statusDescription: "状态说明",
    statusIndexed: "文档已索引并可搜索",
    statusSearchable: "可使用搜索工具查找文档内容",
    statusChunkDetailAvailable: "可使用 get_chunk_detail 查看片段详情",
    positionLabel: "位置:",
    chunkPositionValue: "第 {index} 个片段",
    contentLengthLabelSimple: "内容长度:",
    fullContentLabel: "完整内容",
    copyContent: "复制内容",
    knowledgeBaseCount: "共 {count} 个知识库",
    noKnowledgeBases: "没有可用的知识库",
    rawOutputLabel: "原始输出",
    selectKnowledgeBaseWarning: "请至少选择一个知识库",
    processError: "处理出错",
  },
  agent: {
    taskLabel: "任务:",
    copy: "复制",
    addToKnowledgeBase: "添加到知识库",
    updatePlan: "更新计划",
    webSearchFound: "找到 <strong>{count}</strong> 个网络搜索结果",
    argumentsLabel: "参数",
    toolFallback: "工具",
  },
  settings: {
    title: "设置",
    modelConfig: "模型配置",
    modelManagement: "模型管理",
    agentConfig: "Agent配置",
    conversationConfig: "对话设置",
    conversationStrategy: "对话策略",
    webSearchConfig: "网络搜索",
    mcpService: "MCP服务",
    systemSettings: "系统设置",
    tenantInfo: "租户信息",
    apiInfo: "API信息",
    system: "系统设置",
    systemConfig: "系统配置",
    knowledgeBaseSettings: "知识库设置",
    configureKbModels: "为此知识库配置模型和文档分割参数",
    manageSystemModels: "管理和更新系统模型及服务配置",
    basicInfo: "基本信息",
    documentSplitting: "文档分割",
    apiEndpoint: "API端点",
    enterApiEndpoint: "输入API端点，例如：http://localhost",
    enterApiKey: "输入API密钥",
    enterKnowledgeBaseId: "输入知识库ID",
    saveConfig: "保存配置",
    reset: "重置",
    configSaved: "配置保存成功",
    enterApiEndpointRequired: "请输入API端点",
    enterApiKeyRequired: "请输入API密钥",
    enterKnowledgeBaseIdRequired: "请输入知识库ID",
    name: "名称",
    enterName: "输入名称",
    description: "描述",
    chunkSize: "分块大小",
    chunkOverlap: "分块重叠",
    save: "保存",
    saving: "保存中...",
    saveSuccess: "保存成功",
    saveFailed: "保存失败",
    model: "模型",
    llmModel: "LLM模型",
    embeddingModel: "嵌入模型",
    rerankModel: "重排序模型",
    vlmModel: "多模态模型",
    modelName: "模型名称",
    modelUrl: "模型地址",
    apiKey: "API密钥",
    cancel: "取消",
    saveFailedSettings: "设置保存失败",
    enterNameRequired: "请输入名称",
  },
  webSearchSettings: {
    title: "网络搜索配置",
    description:
      "配置网络搜索功能，在回答问题时可以从互联网获取实时信息补充知识库内容",
    providerLabel: "搜索引擎提供商",
    providerDescription: "选择用于网络搜索的搜索引擎服务",
    providerPlaceholder: "选择搜索引擎...",
    apiKeyLabel: "API 密钥",
    apiKeyDescription: "输入所选搜索引擎的 API 密钥",
    apiKeyPlaceholder: "请输入 API 密钥",
    maxResultsLabel: "最大结果数",
    maxResultsDescription: "每次搜索返回的最大结果数量（1-50）",
    includeDateLabel: "包含发布日期",
    includeDateDescription: "在搜索结果中包含内容的发布日期信息",
    compressionLabel: "压缩方法",
    compressionDescription: "对搜索结果内容的压缩处理方法",
    compressionNone: "无压缩",
    compressionSummary: "LLM 摘要",
    blacklistLabel: "URL 黑名单",
    blacklistDescription:
      "排除特定域名或 URL 的搜索结果，每行一个。支持通配符（*）和正则表达式（以/开头和结尾）",
    blacklistPlaceholder: "例如：\n*://*.example.com/*\n/example\\.(net|org)/",
    errors: {
      unknown: "未知错误",
    },
    toasts: {
      loadProvidersFailed: "加载搜索引擎列表失败: {message}",
      saveSuccess: "网络搜索配置已保存",
      saveFailed: "保存配置失败: {message}",
    },
  },
  graphSettings: {
    title: "知识图谱配置",
    description: "配置实体关系提取功能，自动从文本中提取实体和关系构建知识图谱",
    enableLabel: "启用实体关系提取",
    enableDescription: "开启后将自动从文本中提取实体和关系",
    tagsLabel: "关系类型",
    tagsDescription: "定义要提取的关系类型标签，多个标签用逗号分隔",
    tagsPlaceholder: "输入关系类型，如：工作于、同事、朋友等",
    generateRandomTags: "生成随机标签",
    sampleTextLabel: "示例文本",
    sampleTextDescription: "用于测试实体关系提取的示例文本",
    sampleTextPlaceholder: "输入一段包含实体和关系的文本...",
    generateRandomText: "生成随机文本",
    entityListLabel: "实体列表",
    entityListDescription: "从文本中提取的实体及其属性",
    nodeNamePlaceholder: "输入实体名称",
    attributePlaceholder: "输入属性值",
    addAttribute: "添加属性",
    manageEntitiesLabel: "管理实体",
    manageEntitiesDescription: "添加或删除实体节点",
    addEntity: "添加实体",
    relationListLabel: "关系列表",
    relationListDescription: "定义实体之间的关系连接",
    selectEntity: "选择实体",
    selectRelationType: "选择关系类型",
    manageRelationsLabel: "管理关系",
    manageRelationsDescription: "添加或删除实体间的关系",
    addRelation: "添加关系",
    extractActionsLabel: "提取操作",
    extractActionsDescription: "执行实体关系提取或管理示例数据",
    startExtraction: "开始提取",
    extracting: "提取中...",
    defaultExample: "默认示例",
    clearExample: "清除示例",
    completeModelConfig: "请先完成模型配置",
    tagsGenerated: "标签生成成功",
    tagsGenerateFailed: "标签生成失败",
    textGenerated: "文本生成成功",
    textGenerateFailed: "文本生成失败",
    pleaseInputText: "请先输入示例文本",
    extractSuccess: "实体关系提取成功",
    extractFailed: "实体关系提取失败",
    exampleLoaded: "示例已加载",
    exampleCleared: "示例已清除",
    disabledWarning: "知识图谱数据库未启用，实体关系提取功能将无法使用",
    howToEnable: "如何启用知识图谱？",
    saveSuccess: "图谱配置已保存",
    saveFailed: "保存配置失败: {message}",
    errors: {
      unknown: "未知错误",
    },
  },
  initialization: {
    title: "初始化",
    welcome: "欢迎使用WeKnora",
    description: "请先配置系统以开始使用",
    step1: "步骤1：配置LLM模型",
    step2: "步骤2：配置嵌入模型",
    step3: "步骤3：配置其他模型",
    complete: "完成初始化",
    skip: "跳过",
    next: "下一步",
    previous: "上一步",
    ollamaServiceStatus: "Ollama服务状态",
    refreshStatus: "刷新状态",
    ollamaServiceAddress: "Ollama服务地址",
    notConfigured: "未配置",
    notRunning: "未运行",
    normal: "正常",
    installedModels: "已安装模型",
    none: "暂无",
    knowledgeBaseInfo: "知识库信息",
    knowledgeBaseName: "知识库名称",
    knowledgeBaseNamePlaceholder: "输入知识库名称",
    knowledgeBaseDescription: "知识库描述",
    knowledgeBaseDescriptionPlaceholder: "输入知识库描述",
    llmModelConfig: "LLM大语言模型配置",
    modelSource: "模型来源",
    local: "Ollama（本地）",
    remote: "Remote API（远程）",
    modelName: "模型名称",
    modelNamePlaceholder: "例如：qwen3:0.6b",
    baseUrl: "Base URL",
    baseUrlPlaceholder:
      "例如：https://api.openai.com/v1，去掉URL末尾的/chat/completions部分",
    apiKey: "API Key（可选）",
    apiKeyPlaceholder: "输入API Key（可选）",
    downloadModel: "下载模型",
    installed: "已安装",
    notInstalled: "未安装",
    notChecked: "未检查",
    checkConnection: "检查连接",
    connectionNormal: "连接正常",
    connectionFailed: "连接失败",
    checkingConnection: "正在检查连接",
    embeddingModelConfig: "嵌入模型配置",
    embeddingWarning: "知识库已有文件，无法更改嵌入模型配置",
    dimension: "维度",
    dimensionPlaceholder: "输入向量维度",
    detectDimension: "检测维度",
    rerankModelConfig: "重排序模型配置",
    enableRerank: "启用重排序模型",
    multimodalConfig: "多模态配置",
    enableMultimodal: "启用图像信息提取",
    visualLanguageModelConfig: "视觉语言模型配置",
    interfaceType: "接口类型",
    openaiCompatible: "OpenAI兼容接口",
    storageServiceConfig: "存储服务配置",
    storageType: "存储类型",
    bucketName: "Bucket名称",
    bucketNamePlaceholder: "输入Bucket名称",
    pathPrefix: "路径前缀",
    pathPrefixPlaceholder: "例如：images",
    secretId: "Secret ID",
    secretIdPlaceholder: "输入COS Secret ID",
    secretKey: "Secret Key",
    secretKeyPlaceholder: "输入COS Secret Key",
    region: "Region",
    regionPlaceholder: "例如：ap-beijing",
    appId: "App ID",
    appIdPlaceholder: "输入App ID",
    functionTest: "功能测试",
    testDescription: "上传图片测试VLM模型的图像描述和文字识别功能",
    selectImage: "选择图片",
    startTest: "开始测试",
    testResult: "测试结果",
    imageDescription: "图像描述：",
    textRecognition: "文字识别：",
    processingTime: "处理时间：",
    testFailed: "测试失败",
    multimodalProcessingFailed: "多模态处理失败",
    documentSplittingConfig: "文档分割配置",
    splittingStrategy: "分割策略",
    balancedMode: "平衡模式",
    balancedModeDesc: "分块大小：1000 / 重叠：200",
    precisionMode: "精确模式",
    precisionModeDesc: "分块大小：512 / 重叠：100",
    contextMode: "上下文模式",
    contextModeDesc: "分块大小：2048 / 重叠：400",
    custom: "自定义",
    customDesc: "手动配置参数",
    chunkSize: "分块大小",
    chunkOverlap: "分块重叠",
    separatorSettings: "分隔符设置",
    selectOrCustomSeparators: "选择或自定义分隔符",
    characters: "个字符",
    separatorParagraph: "段落分隔符 (\\n\\n)",
    separatorNewline: "换行符 (\\n)",
    separatorPeriod: "句号 (。)",
    separatorExclamation: "感叹号 (！)",
    separatorQuestion: "问号 (？)",
    separatorSemicolon: "分号 (;)",
    separatorChineseSemicolon: "中文分号 (；)",
    separatorComma: "逗号 (,)",
    separatorChineseComma: "中文逗号 (，)",
    entityRelationExtraction: "实体和关系提取",
    enableEntityRelationExtraction: "启用实体和关系提取",
    relationTypeConfig: "关系类型配置",
    relationType: "关系类型",
    generateRandomTags: "生成随机标签",
    completeModelConfig: "请完成模型配置",
    systemWillExtract: "系统将根据所选关系类型从文本中提取相应的实体和关系",
    extractionExample: "提取示例",
    sampleText: "示例文本",
    sampleTextPlaceholder:
      '输入用于分析的文本，例如："红楼梦"，又名"石头记"，是中国四大名著之一，清代曹雪芹所著...',
    generateRandomText: "生成随机文本",
    entityList: "实体列表",
    nodeName: "节点名称",
    nodeNamePlaceholder: "节点名称",
    addAttribute: "添加属性",
    attributeValue: "属性值",
    attributeValuePlaceholder: "属性值",
    addEntity: "添加实体",
    completeEntityInfo: "请完成实体信息",
    relationConnection: "关系连接",
    selectEntity: "选择实体",
    addRelation: "添加关系",
    completeRelationInfo: "请完成关系信息",
    startExtraction: "开始提取",
    extracting: "提取中...",
    defaultExample: "默认示例",
    clearExample: "清除示例",
    updateKnowledgeBaseSettings: "更新知识库设置",
    updateConfigInfo: "更新配置信息",
    completeConfig: "完成配置",
    waitForDownloads: "请等待所有Ollama模型下载完成后再更新配置",
    completeModelConfigInfo: "请完成模型配置信息",
    knowledgeBaseIdMissing: "知识库ID缺失",
    knowledgeBaseSettingsUpdateSuccess: "知识库设置更新成功",
    configUpdateSuccess: "配置更新成功",
    systemInitComplete: "系统初始化完成",
    operationFailed: "操作失败",
    updateKnowledgeBaseInfoFailed: "更新知识库基本信息失败",
    knowledgeBaseIdMissingCannotSave: "知识库ID缺失，无法保存配置",
    operationFailedCheckNetwork: "操作失败，请检查网络连接",
    imageUploadSuccess: "图片上传成功，可以开始测试",
    multimodalConfigIncomplete:
      "多模态配置不完整，请先完成多模态配置后再上传图片",
    pleaseSelectImage: "请选择图片",
    multimodalTestSuccess: "多模态测试成功",
    multimodalTestFailed: "多模态测试失败",
    pleaseEnterSampleText: "请输入示例文本",
    pleaseEnterRelationType: "请输入关系类型",
    pleaseEnterLLMModelConfig: "请输入LLM大语言模型配置",
    noValidNodesExtracted: "未提取到有效节点",
    noValidRelationsExtracted: "未提取到有效关系",
    extractionFailedCheckNetwork: "提取失败，请检查网络或文本格式",
    generateFailedRetry: "生成失败，请重试",
    pleaseCheckForm: "请检查表单填写是否正确",
    detectionSuccessful: "检测成功，维度自动填充为",
    detectionFailed: "检测失败",
    detectionFailedCheckConfig: "检测失败，请检查配置",
    modelDownloadSuccess: "模型下载成功",
    modelDownloadFailed: "模型下载失败",
    downloadStartFailed: "下载启动失败",
    queryProgressFailed: "进度查询失败",
    checkOllamaStatusFailed: "Ollama状态检查失败",
    getKnowledgeBaseInfoFailed: "获取知识库信息失败",
    textRelationExtractionFailed: "文本关系提取失败",
    pleaseEnterKnowledgeBaseName: "请输入知识库名称",
    knowledgeBaseNameLength: "知识库名称长度必须为1-50个字符",
    knowledgeBaseDescriptionLength: "知识库描述不能超过200个字符",
    pleaseEnterLLMModelName: "请输入LLM模型名称",
    pleaseEnterBaseURL: "请输入BaseURL",
    pleaseEnterEmbeddingModelName: "请输入嵌入模型名称",
    pleaseEnterEmbeddingDimension: "请输入嵌入维度",
    dimensionMustBeInteger: "维度必须是有效整数，通常为768、1024、1536、3584等",
    pleaseEnterTextContent: "请输入文本内容",
    textContentMinLength: "文本内容必须包含至少10个字符",
    pleaseEnterValidTag: "请输入有效标签",
    tagAlreadyExists: "此标签已存在",
    checkFailed: "检查失败",
    startingDownload: "正在启动下载...",
    downloadStarted: "下载已开始",
    model: "模型",
    startModelDownloadFailed: "启动模型下载失败",
    downloadCompleted: "下载完成",
    downloadFailed: "下载失败",
    knowledgeBaseSettingsModeMissingId: "知识库设置模式缺少知识库ID",
    completeEmbeddingConfig: "请先完成嵌入配置",
    detectionSuccess: "检测成功，",
    dimensionAutoFilled: "维度已自动填充：",
    checkFormCorrectness: "请检查表单填写是否正确",
    systemInitializationCompleted: "系统初始化完成",
    generationFailedRetry: "生成失败，请重试",
    chunkSizeDesc:
      "每个文本块的大小。较大的块保留更多上下文，但可能降低搜索准确性。",
    chunkOverlapDesc: "相邻块之间重叠的字符数。有助于保持块边界处的上下文。",
    selectRelationType: "选择关系类型",
  },
  auth: {
    login: "登录",
    logout: "退出",
    username: "用户名",
    email: "邮箱",
    password: "密码",
    confirmPassword: "确认密码",
    rememberMe: "记住我",
    forgotPassword: "忘记密码？",
    loginSuccess: "登录成功！",
    loginFailed: "登录失败",
    loggingIn: "登录中...",
    register: "注册",
    registering: "注册中...",
    createAccount: "创建账户",
    haveAccount: "已有账户？",
    noAccount: "还没有账户？",
    backToLogin: "返回登录",
    registerNow: "立即注册",
    registerSuccess: "注册成功！系统已为您创建专属租户，请登录",
    registerFailed: "注册失败",
    subtitle: "基于大模型的文档理解和语义搜索框架",
    registerSubtitle: "注册后系统将为您创建专属租户",
    emailPlaceholder: "输入邮箱地址",
    passwordPlaceholder: "输入密码（8-32个字符，包含字母和数字）",
    confirmPasswordPlaceholder: "再次输入密码",
    usernamePlaceholder: "输入用户名",
    emailRequired: "请输入邮箱地址",
    emailInvalid: "请输入正确的邮箱格式",
    passwordRequired: "请输入密码",
    passwordMinLength: "密码至少8个字符",
    passwordMaxLength: "密码不能超过32个字符",
    passwordMustContainLetter: "密码必须包含字母",
    passwordMustContainNumber: "密码必须包含数字",
    usernameRequired: "请输入用户名",
    usernameMinLength: "用户名至少2个字符",
    usernameMaxLength: "用户名不能超过20个字符",
    usernameInvalid: "用户名只能包含字母、数字、下划线和中文字符",
    confirmPasswordRequired: "请确认密码",
    passwordMismatch: "两次输入的密码不一致",
    loginError: "登录错误，请检查邮箱或密码",
    loginErrorRetry: "登录错误，请稍后重试",
    registerError: "注册错误，请稍后重试",
    forgotPasswordNotAvailable: "密码找回功能暂不可用，请联系管理员",
  },
  authStore: {
    errors: {
      parseUserFailed: "解析用户信息失败",
      parseTenantFailed: "解析租户信息失败",
      parseKnowledgeBasesFailed: "解析知识库列表失败",
      parseCurrentKnowledgeBaseFailed: "解析当前知识库失败",
    },
  },
  common: {
    confirm: "确认",
    cancel: "取消",
    save: "保存",
    delete: "删除",
    edit: "编辑",
    default: "默认",
    create: "创建",
    search: "搜索",
    filter: "筛选",
    export: "导出",
    import: "导入",
    upload: "上传",
    download: "下载",
    refresh: "刷新",
    loading: "加载中...",
    noData: "暂无数据",
    noMoreData: "已加载全部内容",
    error: "错误",
    success: "成功",
    warning: "警告",
    info: "信息",
    selectAll: "全选",
    yes: "是",
    no: "否",
    ok: "确定",
    close: "关闭",
    back: "返回",
    next: "下一步",
    finish: "完成",
    all: "全部",
    reset: "重置",
    clear: "清空",
    website: "官方网站",
    on: "开启",
    off: "关闭",
    resetToDefault: "恢复默认",
    confirmDelete: "确认删除",
    deleteSuccess: "删除成功",
    deleteFailed: "删除失败",
  },
  file: {
    upload: "上传文件",
    uploadSuccess: "文件上传成功",
    uploadFailed: "文件上传失败",
    delete: "删除文件",
    deleteSuccess: "文件删除成功",
    deleteFailed: "文件删除失败",
    download: "下载文件",
    preview: "预览",
    unsupportedFormat: "不支持的文件格式",
    maxSizeExceeded: "文件大小超过限制",
    selectFile: "选择文件",
  },
  tenant: {
    title: "租户信息",
    currentTenant: "当前租户",
    switchTenant: "切换租户",
    sectionDescription: "查看租户的详细配置信息",
    apiDocument: "API文档",
    name: "租户名称",
    id: "租户ID",
    createdAt: "创建时间",
    updatedAt: "更新时间",
    status: "状态",
    active: "活跃",
    inactive: "未活跃",
    systemInfo: "系统信息",
    viewSystemInfo: "查看系统版本和用户账户配置信息",
    version: "版本",
    buildTime: "构建时间",
    goVersion: "Go版本",
    userInfo: "用户信息",
    userId: "用户ID",
    username: "用户名",
    email: "邮箱",
    tenantInfo: "租户信息",
    tenantId: "租户ID",
    tenantName: "租户名称",
    description: "描述",
    business: "业务",
    noDescription: "无描述",
    noBusiness: "无",
    statusActive: "活跃",
    statusInactive: "未激活",
    statusSuspended: "已暂停",
    statusUnknown: "未知",
    apiKey: "API密钥",
    keepApiKeySafe: "请妥善保管您的API密钥，不要在公共场所或代码仓库中泄露",
    storageInfo: "存储信息",
    storageQuota: "存储配额",
    used: "已使用",
    usage: "使用率",
    apiDevDocs: "API开发文档",
    useApiKey: "使用您的API密钥开始开发，查看完整的API文档和代码示例。",
    viewApiDoc: "查看API文档",
    loadingAccountInfo: "加载账户信息中...",
    loadingInfo: "正在加载信息...",
    loadFailed: "加载失败",
    retry: "重试",
    apiKeyCopied: "API密钥已复制到剪贴板",
    unknown: "未知",
    formatError: "格式错误",
    searchPlaceholder: "搜索租户名称或输入租户ID...",
    searchHint: "支持按名称搜索或直接输入租户ID",
    noMatch: "未找到匹配的租户",
    switchSuccess: "租户切换成功",
    loadTenantsFailed: "加载租户列表失败",
    loading: "加载中...",
    loadMore: "加载更多",
    details: {
      idLabel: "租户 ID",
      idDescription: "您所属租户的唯一标识",
      nameLabel: "租户名称",
      nameDescription: "您所属的租户名称",
      descriptionLabel: "租户描述",
      descriptionDescription: "租户的详细描述信息",
      businessLabel: "租户业务",
      businessDescription: "租户所属的业务类型",
      statusLabel: "租户状态",
      statusDescription: "租户当前的运行状态",
      createdAtLabel: "租户创建时间",
      createdAtDescription: "租户创建的时间",
    },
    storage: {
      quotaLabel: "存储配额",
      quotaDescription: "租户的总存储空间配额",
      usedLabel: "已使用存储",
      usedDescription: "已经使用的存储空间",
      usageLabel: "存储使用率",
      usageDescription: "存储空间的使用百分比",
    },
    messages: {
      fetchFailed: "获取租户信息失败",
      networkError: "网络错误，请稍后重试",
    },
    api: {
      title: "API 信息",
      description: "查看和管理您的 API 密钥",
      keyLabel: "API Key",
      keyDescription: "用于 API 调用的密钥，请妥善保管",
      copyTitle: "复制 API Key",
      docLabel: "API 文档",
      docDescription: "查看完整的 API 调用文档和示例，",
      openDoc: "打开文档",
      userSectionTitle: "用户信息",
      userIdLabel: "用户 ID",
      userIdDescription: "您的唯一用户标识",
      usernameLabel: "用户名",
      usernameDescription: "您的登录用户名",
      emailLabel: "邮箱",
      emailDescription: "您的注册邮箱地址",
      createdAtLabel: "注册时间",
      createdAtDescription: "账户创建的时间",
      noKey: "暂无 API Key",
      copySuccess: "API Key 已复制到剪贴板",
      copyFailed: "复制失败，请手动复制",
    },
  },
  system: {
    title: "系统信息",
    sectionDescription: "查看系统版本信息和用户账户配置",
    loadingInfo: "正在加载信息...",
    retry: "重试",
    versionLabel: "系统版本",
    versionDescription: "当前系统的版本号",
    buildTimeLabel: "构建时间",
    buildTimeDescription: "系统构建的时间",
    goVersionLabel: "Go 版本",
    goVersionDescription: "后端使用的 Go 语言版本",
    keywordIndexEngineLabel: "关键词索引引擎",
    keywordIndexEngineDescription: "当前使用的关键词索引引擎",
    vectorStoreEngineLabel: "向量存储引擎",
    vectorStoreEngineDescription: "当前使用的向量存储引擎",
    graphDatabaseEngineLabel: "图数据库引擎",
    graphDatabaseEngineDescription: "当前使用的图数据库引擎",
    unknown: "未知",
    messages: {
      fetchFailed: "获取系统信息失败",
      networkError: "网络错误，请稍后重试",
    },
  },
  mcp: {
    testResult: {
      title: "测试结果: {name}",
      connectionSuccess: "连接成功",
      connectionFailed: "连接失败",
      toolsTitle: "可用工具",
      resourcesTitle: "可用资源",
      descriptionLabel: "描述",
      schemaLabel: "参数结构",
      emptyDescription: "该服务未提供工具或资源",
    },
  },
  error: {
    invalidImageLink: "无效的图片链接",
    network: "网络错误",
    server: "服务器错误",
    notFound: "未找到",
    unauthorized: "未授权",
    forbidden: "禁止访问",
    unknown: "未知错误",
    tryAgain: "请重试",
  },
  model: {
    llmModel: "LLM模型",
    embeddingModel: "嵌入模型",
    rerankModel: "重排序模型",
    vlmModel: "多模态模型",
    modelName: "模型名称",
    modelProvider: "模型提供商",
    modelUrl: "模型地址",
    apiKey: "API密钥",
    testConnection: "测试连接",
    connectionSuccess: "连接成功",
    connectionFailed: "连接失败",
    dimension: "维度",
    maxTokens: "最大令牌数",
    temperature: "温度",
    topP: "Top P",
    selectModel: "选择模型",
    customModel: "自定义模型",
    builtinModel: "内置模型",
    defaultTag: "默认",
    addModelInSettings: "前往全局设置添加模型",
    loadFailed: "加载模型列表失败",
    selectModelPlaceholder: "请选择模型",
    searchPlaceholder: "搜索模型...",
    editor: {
      addTitle: "添加模型",
      editTitle: "编辑模型",
      sourceLabel: "模型来源",
      sourceLocal: "Ollama（本地）",
      sourceRemote: "Remote API（远程）",
      description: {
        chat: "配置用于对话的大语言模型",
        embedding: "配置用于文本向量化的嵌入模型",
        rerank: "配置用于结果重排序的模型",
        vllm: "配置用于视觉理解和多模态的视觉语言模型",
        default: "配置模型信息",
      },
      modelNamePlaceholder: {
        local: "例如：llama2:latest",
        remote: "例如：gpt-4, claude-3-opus",
        localVllm: "例如：llava:latest",
        remoteVllm: "例如：gpt-4-vision-preview",
      },
      baseUrlLabel: "Base URL",
      baseUrlPlaceholder: "例如：https://api.openai.com/v1",
      baseUrlPlaceholderVllm: "例如：http://localhost:11434/v1",
      apiKeyOptional: "API Key（可选）",
      apiKeyPlaceholder: "输入 API Key",
      connectionTest: "连接测试",
      testing: "测试中...",
      testConnection: "测试连接",
      searchPlaceholder: "搜索模型...",
      downloadLabel: "下载: {keyword}",
      refreshList: "刷新列表",
      dimensionLabel: "向量维度",
      dimensionPlaceholder: "例如：1536",
      checkDimension: "检测维度",
      dimensionDetected: "检测成功，向量维度：{value}",
      dimensionFailed: "检测失败，请手动输入维度",
      remoteDimensionDetected: "检测到向量维度：{value}",
      dimensionHint: '模型已选择，点击"检测维度"按钮自动获取向量维度',
      loadModelListFailed: "加载模型列表失败",
      listRefreshed: "列表已刷新",
      fillModelAndUrl: "请先填写模型标识和 Base URL",
      remoteBaseUrlRequired: "Remote API 类型必须填写 Base URL",
      unsupportedModelType: "不支持的模型类型",
      connectionSuccess: "连接成功",
      connectionFailed: "连接失败",
      connectionConfigError: "连接失败，请检查配置",
      downloadStarted: "开始下载 {name}",
      downloadCompleted: "{name} 下载完成",
      downloadFailed: "{name} 下载失败",
      downloadStartFailed: "启动下载失败",
      ollamaUnavailable: "Ollama服务不可用，无法选择本地模型",
      goToOllamaSettings: "查看设置",
      validation: {
        modelNameRequired: "请输入模型名称",
        modelNameEmpty: "模型名称不能为空",
        modelNameMax: "模型名称不能超过100个字符",
        baseUrlRequired: "请输入 Base URL",
        baseUrlEmpty: "Base URL 不能为空",
        baseUrlInvalid: "Base URL 格式不正确，请输入有效的 URL",
      },
    },
  },
  language: {
    zhCN: "简体中文",
    enUS: "English",
    ruRU: "Русский",
    selectLanguage: "选择语言",
    language: "语言",
    languageDescription: "选择界面显示语言",
    languageSaved: "语言设置已保存",
  },
  general: {
    title: "常规设置",
    allSettings: "全部设置",
    description: "配置语言、外观等基础选项",
    settings: "设置",
    close: "关闭设置",
  },
  platform: {
    subtitle: "企业级智能文档检索框架",
    description: "让复杂文档理解与精准检索变得简单",
    rag: "RAG 增强生成",
    hybridSearch: "混合检索",
    localDeploy: "本地部署",
    multimodalParsing: "多模态文档解析",
    hybridSearchEngine: "混合检索引擎",
    ragQandA: "RAG 智能问答",
    independentTenant: "独立租户空间",
    fullApiAccess: "完整 API 访问",
    knowledgeBaseManagement: "知识库管理",
    carousel: {
      agenticRagTitle: "Agentic RAG",
      agenticRagDesc: "问题改写 + 智能召回 + 重排序",
      hybridSearchTitle: "混合检索策略",
      hybridSearchDesc: "BM25 + 向量 + 知识图谱",
      smartDocRetrievalTitle: "智能文档检索",
      smartDocRetrievalDesc: "PDF/Word/图片多格式解析",
    },
  },
  time: {
    today: "今天",
    yesterday: "昨天",
    last7Days: "近7天",
    last30Days: "近30天",
    lastYear: "近1年",
    earlier: "更早",
  },
  upload: {
    uploadDocument: "上传文档",
    uploadFolder: "上传文件夹",
    onlineEdit: "在线编辑",
    deleteRecord: "删除记录",
  },
  manualEditor: {
    placeholders: {
      heading: "标题{level}",
      listItem: "列表项",
      taskItem: "任务项",
      quote: "引用内容",
      code: "代码内容",
      linkText: "链接文本",
      imageAlt: "描述",
      bold: "加粗文本",
      italic: "斜体文本",
      strike: "删除线",
      inlineCode: "code",
    },
    table: {
      column1: "列1",
      column2: "列2",
      cell: "内容",
    },
    toolbar: {
      bold: "加粗",
      italic: "斜体",
      strike: "删除线",
      inlineCode: "行内代码",
      heading1: "一级标题",
      heading2: "二级标题",
      heading3: "三级标题",
      bulletList: "无序列表",
      orderedList: "有序列表",
      taskList: "任务列表",
      blockquote: "引用",
      codeBlock: "代码块",
      link: "插入链接",
      image: "插入图片",
      table: "插入表格",
      horizontalRule: "分割线",
    },
    view: {
      toggleToEdit: "切换到编辑视图",
      toggleToPreview: "切换到预览视图",
      editLabel: "返回编辑",
      previewLabel: "预览内容",
    },
    preview: {
      empty: "暂无内容",
    },
    title: {
      edit: "编辑 Markdown 知识",
      create: "在线编辑 Markdown 知识",
    },
    labels: {
      currentKnowledgeBase: "当前知识库",
    },
    defaultTitlePrefix: "新建文档",
    error: {
      fetchDetailFailed: "获取知识详情失败",
      saveFailed: "保存失败，请稍后重试",
    },
    warning: {
      selectKnowledgeBase: "请选择目标知识库",
      enterTitle: "请输入知识标题",
      enterContent: "请输入知识内容",
      contentTooShort: "内容过短，建议补充更多信息后再发布",
    },
    success: {
      draftSaved: "草稿已保存",
      published: "知识已发布并开始索引",
    },
    form: {
      knowledgeBaseLabel: "目标知识库",
      knowledgeBasePlaceholder: "请选择知识库",
      titleLabel: "知识标题",
      titlePlaceholder: "请输入标题",
      contentPlaceholder: "支持 Markdown 语法，可使用 # 标题、列表、代码块等",
    },
    noDocumentKnowledgeBases: "暂无可用的文档型知识库，请先创建一个文档型知识库",
    status: {
      draftTag: "当前状态：草稿",
      publishedTag: "当前状态：已发布",
      lastUpdated: "最近更新：{time}",
    },
    loading: {
      content: "正在加载内容",
      preparing: "正在准备编辑器",
    },
    actions: {
      cancel: "取消",
      saveDraft: "暂存草稿",
      publish: "发布入库",
    },
  },
  createChat: {
    title: "基于知识库内容问答 - AI 问答",
    newSessionTitle: "新会话",
    messages: {
      selectKnowledgeBase: "请先选择知识库",
      createFailed: "创建会话失败",
      createError: "创建会话失败，请稍后重试",
    },
  },
  knowledgeList: {
    create: "新建知识库",
    createFAQ: "新建 FAQ 知识库",
    subtitle: "管理和组织您的知识库，支持文档型和问答型知识库",
    uninitializedBanner:
      "部分知识库尚未初始化，需要先在设置中配置模型信息才能添加知识文档",
    empty: {
      title: "暂无知识库",
      description: '点击左侧快捷操作"新建知识库"按钮创建第一个知识库',
    },
    delete: {
      confirmTitle: "删除确认",
      confirmMessage: '确认要删除知识库"{name}"？删除后不可恢复',
      confirmButton: "确认删除",
    },
    messages: {
      deleted: "已删除",
      deleteFailed: "删除失败",
    },
    features: {
      knowledgeGraph: "已启用知识图谱",
      multimodal: "已启用多模态",
      questionGeneration: "已启用问题生成",
    },
    processing: "正在处理导入任务",
    processingDocuments: "正在处理 {count} 个文档",
    stats: {
      documents: "文档数量",
      faqEntries: "问答条目",
      chunks: "分块数量",
    },
    uploadProgress: {
      uploadingTitle: "正在向「{name}」上传文件夹中的文档",
      detail: "已完成 {completed}/{total} 个文件",
      keepPageOpen: "请保持页面打开，上传完成后会自动刷新解析状态。",
      completedTitle: "「{name}」的上传已完成",
      completedDetail: "共上传 {total} 个文件，正在刷新列表查看解析状态...",
      refreshing: "正在刷新列表并获取最新解析状态...",
      errorTip: "部分文件上传失败，请查看右上角通知详情。",
      unknownKb: "知识库 {id}",
    },
  },
  knowledgeEditor: {
    titleCreate: "新建知识库",
    titleEdit: "知识库设置",
    sidebar: {
      basic: "基本信息",
      models: "模型配置",
      chunking: "分块设置",
      advanced: "高级设置",
      faq: "FAQ 设置",
      graph: "知识图谱",
    },
    basic: {
      title: "基本信息",
      description: "设置知识库的名称和描述信息",
      typeLabel: "知识库类型",
      typeDocument: "文档",
      typeFAQ: "问答",
      typeDescription: "FAQ 类型适合结构化问答数据；文档型支持文件解析与分块。",
      nameLabel: "知识库名称",
      namePlaceholder: "请输入知识库名称",
      descriptionLabel: "知识库描述",
      descriptionPlaceholder: "请输入知识库描述（可选）",
    },
    buttons: {
      create: "创建知识库",
      save: "保存配置",
    },
    messages: {
      loadModelsFailed: "加载模型列表失败",
      loadDataFailed: "加载知识库数据失败",
      notFound: "知识库不存在",
      nameRequired: "请输入知识库名称",
      embeddingRequired: "请选择 Embedding 模型",
      summaryRequired: "请选择 Summary 模型",
      multimodalInvalid: "多模态配置验证失败",
      createSuccess: "知识库创建成功",
      createFailed: "创建知识库失败",
      missingId: "缺少知识库 ID",
      buildDataFailed: "数据构建失败",
      updateSuccess: "配置保存成功",
      indexModeRequired: "请选择 FAQ 的索引方式",
    },
    document: {
      title: "文档",
      subtitle: "支持点击或拖拽上传，多格式文档自动解析并智能分块，快速构建可检索的知识库",
    },
    faq: {
      title: "问答",
      subtitle: "结构化问答管理，支持标准问、相似问和反例，精准匹配用户查询，提升问答准确率",
      description: "设置 FAQ 知识库的索引策略和问答组织方式",
      indexModeLabel: "索引方式",
      indexModeDescription: "仅索引问题可提升精度，索引问答可提高召回率",
      questionIndexModeLabel: "问题索引方式",
      questionIndexModeDescription: "合并索引：标准问和相似问合并索引；分别索引：标准问和每个相似问独立索引，检索更精确但需要更多存储",
      entryGuide: "FAQ 条目由标准问、相似问、反例和多个答案组成，可在知识库详情中批量导入、编辑。",
      tagDesc: "为 FAQ 条目选择分类",
      modes: {
        questionOnly: "仅标准问/相似问",
        questionAnswer: "标准问 + 答案",
        combined: "合并索引",
        separate: "分别索引",
      },
      standardQuestion: "标准问",
      standardQuestionDesc: "设置问题的标准表述，这是用户最常问的问题形式。",
      answers: "答案",
      answersDesc: "提供完整准确的答案内容，可添加多个答案以覆盖不同场景。",
      similarQuestions: "相似问",
      similarQuestionsDesc: "添加与标准问意思相同但表述不同的问题，帮助系统更好地匹配用户查询。",
      negativeQuestions: "反例",
      negativeQuestionsDesc: "添加不应匹配此答案的问题，用于排除误匹配的情况。",
      categoryLabel: "FAQ 分类",
      categoryButton: "切换分类",
      editorCreate: "新增 FAQ 条目",
      editorEdit: "编辑 FAQ 条目",
      addAnswer: "添加答案",
      answerPlaceholder: "请输入答案内容，支持多行文本，按 Ctrl+Enter 或点击按钮添加",
      similarPlaceholder: "输入相似问题后点击加号添加",
      negativePlaceholder: "输入反例后点击加号添加",
      answerRequired: "请至少填写一个答案",
      noAnswer: "暂无答案",
      noSimilar: "暂无相似问",
      noNegative: "暂无反例",
      emptyTitle: "暂无 FAQ 条目",
      emptyDesc: '点击上方"新增 FAQ 条目"按钮开始创建',
      searchPlaceholder: "搜索问题和答案...",
      searchTest: "检索测试",
      searchTestTitle: "FAQ 检索测试",
      queryLabel: "查询内容",
      queryPlaceholder: "请输入要检索的问题",
      vectorThresholdLabel: "向量相似度阈值",
      vectorThresholdDesc: "范围 0-1，默认 0.7",
      keywordThresholdLabel: "关键词匹配阈值",
      keywordThresholdDesc: "范围 0-1，默认 0.5",
      matchCountLabel: "结果数量",
      matchCountDesc: "范围 1-50，默认 10",
      searchButton: "开始检索",
      searching: "检索中...",
      searchResults: "检索结果",
      noResults: "未找到匹配的 FAQ 条目",
      score: "相似度",
      matchType: "匹配类型",
      matchTypeEmbedding: "向量匹配",
      matchTypeKeywords: "关键词匹配",
      similarityThresholdLabel: "相似度阈值",
      statusEnabled: "已启用",
      statusDisabled: "已禁用",
      statusEnableSuccess: "FAQ 条目已启用",
      statusDisableSuccess: "FAQ 条目已禁用",
      statusUpdateFailed: "更新状态失败",
      batchOperations: "批量操作",
      batchUpdateTag: "批量分类",
      batchUpdateTagTip: "将为 {count} 个选中的条目设置分类",
      batchEnable: "批量启用",
      batchDisable: "批量禁用",
    },
    faqImport: {
      title: "批量导入 FAQ",
      modeLabel: "导入模式",
      appendMode: "追加导入",
      replaceMode: "替换现有条目",
      fileLabel: "选择文件",
      fileTip: "支持 JSON / CSV / Excel。CSV/Excel 表头：分类(必填)、问题(必填)、相似问题(选填-多个用##分隔)、反例问题(选填-多个用##分隔)、机器人回答(必填-多个用##分隔)、是否全部回复(选填-默认FALSE)、是否停用(选填-默认FALSE)、是否禁止被推荐(选填-默认False 可被推荐)。也支持旧格式：standard_question、answers、similar_questions、negative_questions",
      clickToUpload: "点击上传文件",
      dragDropTip: "或拖拽文件到此处",
      importButton: "导入 FAQ",
      deleteSelected: "批量删除",
      deleteSuccess: "选中条目已删除",
      previewCount: "共解析 {count} 条记录",
      previewMore: "还有 {count} 条未展示",
      importSuccess: "导入成功",
      parseFailed: "解析文件失败",
      invalidJSON: "JSON 文件格式不正确",
      unsupportedFormat: "暂不支持该文件格式",
      selectFile: "请先选择需要导入的文件",
      downloadExample: "下载示例文件",
      downloadExampleJSON: "下载 JSON 示例",
      downloadExampleCSV: "下载 CSV 示例",
      downloadExampleExcel: "下载 Excel 示例",
    },
    models: {
      title: "模型配置",
      description: "为知识库选择合适的 AI 模型",
      llmLabel: "LLM 大语言模型",
      llmDesc: "用于总结和摘要的大语言模型",
      llmPlaceholder: "请选择 LLM 模型（可选）",
      embeddingLabel: "Embedding 嵌入模型",
      embeddingDesc: "用于文本向量化的嵌入模型",
      embeddingPlaceholder: "请选择 Embedding 模型",
      embeddingLocked: "知识库中已有文件，无法修改 Embedding 模型",
      rerankLabel: "ReRank 重排序模型",
      rerankDesc: "用于搜索结果重排序的模型（可选）",
      rerankPlaceholder: "请选择 ReRank 模型（可选）",
    },
    chunking: {
      title: "分块设置",
      description: "配置文档分块参数，优化检索效果",
      sizeLabel: "分块大小",
      sizeDescription: "控制每个文档分块的字符数（100-4000）",
      characters: "字符",
      overlapLabel: "分块重叠",
      overlapDescription: "相邻文档块之间的重叠字符数（0-500）",
      separatorsLabel: "分隔符",
      separatorsDescription: "文档分块时使用的分隔符",
      separatorsPlaceholder: "选择分隔符",
      separators: {
        doubleNewline: "双换行 (\\n\\n)",
        singleNewline: "单换行 (\\n)",
        periodCn: "中文句号 (。)",
        exclamationCn: "感叹号 (！)",
        questionCn: "问号 (？)",
        semicolonCn: "中文分号 (；)",
        semicolonEn: "英文分号 (;)",
        space: "空格 ( )",
      },
    },
    advanced: {
      title: "高级设置",
      description: "配置问题生成、多模态等高级功能",
      questionGeneration: {
        label: "AI 问题生成",
        description: "解析文档时调用大模型为每个分块生成相关问题，提高检索召回率。启用后会增加文档解析耗时。",
        countLabel: "生成问题数量",
        countDescription: "每个文档分块生成的问题数量（1-10）",
      },
      multimodal: {
        label: "多模态功能",
        description: "启用图片、视频等多模态内容的理解能力",
        vllmLabel: "VLLM 视觉模型",
        vllmDescription: "用于多模态理解的视觉语言模型（必选）",
        vllmPlaceholder: "请选择 VLLM 模型（必选）",
        storageTitle: "存储配置",
        storageTypeLabel: "存储类型",
        storageTypeDescription:
          "选择多模态文件的存储方式（MinIO 或腾讯云 COS 二选一）",
        storageTypeOptions: {
          minio: "MinIO",
          cos: "腾讯云 COS",
        },
        minioDisabledWarning: "MinIO 未启用，已自动切换到腾讯云 COS。如需使用 MinIO，请先在系统配置中启用 MinIO。",
        minio: {
          bucketLabel: "Bucket 名称",
          bucketDescription: "MinIO 存储桶名称（必填）",
          bucketPlaceholder: "请输入 Bucket 名称（必填）",
          useSslLabel: "使用 SSL",
          useSslDescription: "是否使用 SSL 连接",
          pathPrefixLabel: "路径前缀",
          pathPrefixDescription: "文件存储路径前缀（可选）",
          pathPrefixPlaceholder: "请输入路径前缀",
        },
        cos: {
          secretIdLabel: "SecretId",
          secretIdDescription: "腾讯云 API 密钥 ID（必填）",
          secretIdPlaceholder: "请输入 SecretId（必填）",
          secretKeyLabel: "SecretKey",
          secretKeyDescription: "腾讯云 API 密钥 Key（必填）",
          secretKeyPlaceholder: "请输入 SecretKey（必填）",
          regionLabel: "地域",
          regionDescription: "COS 存储桶所在地域（必填）",
          regionPlaceholder: "如：ap-guangzhou（必填）",
          bucketLabel: "Bucket 名称",
          bucketDescription: "COS 存储桶名称（必填）",
          bucketPlaceholder: "请输入 Bucket 名称（必填）",
          appIdLabel: "AppId",
          appIdDescription: "腾讯云应用 ID（必填）",
          appIdPlaceholder: "请输入 AppId（必填）",
          pathPrefixLabel: "路径前缀",
          pathPrefixDescription: "文件存储路径前缀（可选）",
          pathPrefixPlaceholder: "请输入路径前缀",
        },
      },
    },
  },
  input: {
    addModel: "添加模型",
    placeholder: "基于知识库提问",
    agentMode: "Agent 模式",
    normalMode: "普通模式",
    normalModeDesc: "基于知识库的 RAG 问答",
    agentModeDesc: "ReAct 推理框架，多步思考",
    agentNotReadyTooltip: "Agent 未就绪，请先在设置中完成配置",
    agentNotReadyDetail:
      "Agent 未就绪，需要配置以下内容：{reasons}",
    agentMissingAllowedTools: "允许的工具",
    agentMissingSummaryModel: "对话模型（Summary Model）",
    agentMissingRerankModel: "重排模型（Rerank Model）",
    goToSettings: "前往设置 →",
    webSearch: {
      toggleOn: "开启网络搜索",
      toggleOff: "关闭网络搜索",
      notConfigured: "未配置网络搜索引擎",
    },
    knowledgeBase: "知识库",
    knowledgeBaseWithCount: "知识库({count})",
    notConfigured: "未配置",
    model: "模型",
    remote: "远程",
    noModel: "暂无可用模型",
    stopGeneration: "停止生成",
    send: "发送",
    thinkingLabel: "Thinking:",
    messages: {
      enterContent: "请先输入内容!",
      selectKnowledge: "请先选择知识库!",
      replying: "正在回复中，请稍后再试!",
      agentSwitchedOn: "已切换到 Agent 模式",
      agentSwitchedOff: "已切换到普通模式",
      agentEnabled: "Agent 模式已启用",
      agentDisabled: "Agent 模式已禁用",
      agentNotReadyDetail:
        "Agent 未就绪，需要配置以下内容：{reasons}",
      webSearchNotConfigured:
        "未配置网络搜索引擎，请先在设置中完成搜索引擎选择与接口配置。",
      webSearchEnabled: "网络搜索已开启",
      webSearchDisabled: "网络搜索已关闭",
      sessionMissing: "会话 ID 不存在",
      messageMissing: "无法获取消息 ID，请刷新页面后重试",
      stopSuccess: "已停止生成",
      stopFailed: "停止失败，请重试",
    },
  },
  agentSettings: {
    title: "Agent 配置",
    description:
      "配置 AI Agent 的默认行为和参数，这些设置将应用于所有启用 Agent 模式的对话",
    modelRecommendation: {
      title: "模型推荐",
      content: "为获得更好的 Agent 体验，建议使用支持 FunctionCalling 的长上下文大语言模型，如 deepseek-v3.1-terminus 等",
    },
    status: {
      label: "Agent 状态",
      ready: "可用",
      notReady: "未就绪",
      hint: '配置完成后，Agent 状态将自动变为"可用"，此时可在对话界面开启 Agent 模式',
      missingThinkingModel: "思考模型",
      missingSummaryModel: "对话模型（Summary Model）",
      missingRerankModel: "Rerank 模型",
      missingAllowedTools: "允许的工具",
      pleaseConfigure: "请配置{items}",
      goToConfig: "前往配置对话模型",
      goConfigureModels: "前往配置模型 →",
    },
    maxIterations: {
      label: "最大迭代次数",
      desc: "Agent 执行任务时的最大推理步骤数",
    },
    thinkingModel: {
      label: "思考模型",
      desc: "用于 Agent 推理和规划的 LLM 模型",
      hint: "需要支持 Function call 的大尺寸模型，如 deepseek 等",
    },
    rerankModel: {
      label: "Rerank 模型",
      desc: "搜索结果重排序，统一不同来源的相关度分数",
    },
    model: {
      placeholder: "搜索模型...",
      addChat: "添加新的对话模型",
      addRerank: "添加新的 Rerank 模型",
    },
    temperature: {
      label: "温度参数",
      desc: "控制模型输出的随机性，0 最确定，1 最随机",
    },
    allowedTools: {
      label: "允许的工具",
      desc: "当前 Agent 可使用的工具列表",
      placeholder: "请选择工具...",
      empty: "尚未配置任何工具",
    },
    systemPrompt: {
      label: "系统 Prompt",
      desc: "配置 Agent 的系统提示词，支持占位符模板。占位符会在运行时自动替换为实际内容。",
      availablePlaceholders: "可用占位符：",
      hintPrefix: "提示：输入",
      hintSuffix: "时会自动显示可用占位符",
      custom: "自定义 Prompt",
      disabledHint: "当前使用系统默认 Prompt，开启自定义后才会应用下方内容。",
      placeholder: "请输入系统 Prompt，或留空使用默认 Prompt...",
      tabHint: "根据是否启用网络搜索分别配置系统 Prompt。",
      tabWebOn: "网络搜索已启用",
      tabWebOff: "网络搜索未启用",
    },
    reset: {
      header: "恢复默认 Prompt",
      body: "确定要恢复为默认 Prompt 吗？当前的自定义 Prompt 将被覆盖。",
    },
    errors: {
      selectThinkingModel: "启用Agent模式前，请先选择思考模型",
      selectAtLeastOneTool: "至少需要选择一个允许的工具",
      iterationsRange: "最大迭代次数必须在1-20之间",
      temperatureRange: "温度参数必须在0-2之间",
      validationFailed: "配置验证失败",
    },
    toasts: {
      iterationsSaved: "最大迭代次数已保存",
      thinkingModelSaved: "思考模型已保存",
      rerankModelSaved: "Rerank 模型已保存",
      temperatureSaved: "温度参数已保存",
      toolsUpdated: "工具配置已更新",
      customPromptEnabled: "已启用自定义 Prompt",
      defaultPromptEnabled: "已切换为默认 Prompt",
      resetToDefault: "已恢复为默认 Prompt",
      systemPromptSaved: "系统 Prompt 已保存",
      autoDisabled: "Agent 配置不完整，已自动关闭 Agent 模式",
    },
  },
  conversationSettings: {
    description: "配置对话模式的默认行为和参数，包括Agent模式和普通模式的Prompt设置",
    agentMode: "Agent模式",
    normalMode: "普通模式",
    menus: {
      modes: "模式设置",
      models: "模型配置",
      thresholds: "检索阈值",
      advanced: "高级设置",
    },
    models: {
      description: "统一管理 Agent 和普通模式使用的对话/总结模型与 ReRank 模型",
      chatGroupLabel: "思考 / 对话模型",
      chatGroupDesc: "包含 Agent 推理与规划模型，以及普通模式默认的对话/总结模型",
      chatModel: {
        label: "普通模式默认对话模型",
        desc: "普通模式默认使用的对话/总结模型，当会话未指定模型时生效",
        placeholder: "请选择默认对话模型",
      },
      rerankModel: {
        label: "普通模式默认 ReRank 模型",
        desc: "普通模式默认使用的重排序模型",
        placeholder: "请选择默认 ReRank 模型",
      },
      rerankGroupLabel: "ReRank 模型",
      rerankGroupDesc: "包含 Agent 使用的重排序模型，以及普通模式默认 ReRank 模型",
    },
    thresholds: {
      description: "调整召回与重排序的阈值与 TopK，平衡准确率与性能",
    },
    maxRounds: {
      label: "历史保留轮数",
      desc: "用于多轮上下文和问题改写的历史轮数",
    },
    embeddingTopK: {
      label: "Embedding TopK",
      desc: "向量召回阶段保留的文档数量",
    },
    keywordThreshold: {
      label: "关键词阈值",
      desc: "关键词检索的最低得分阈值",
    },
    vectorThreshold: {
      label: "向量阈值",
      desc: "向量召回的最低相似度阈值",
    },
    rerankTopK: {
      label: "ReRank TopK",
      desc: "重排序后进入答案生成的文档数量",
    },
    rerankThreshold: {
      label: "ReRank 阈值",
      desc: "重排序阶段的最低得分阈值",
    },
    enableRewrite: {
      label: "开启问题改写",
      desc: "多轮对话自动改写问题以获得更优召回",
    },
    enableQueryExpansion: {
      label: "启用查询扩展",
      desc: "召回不足时调用大模型生成扩展查询（增加时延与成本）",
    },
    fallbackStrategy: {
      label: "兜底策略",
      desc: "检索无结果时采用的处理方式",
      fixed: "固定回复",
      model: "交给模型继续生成",
    },
    fallbackResponse: {
      label: "固定兜底回复",
      desc: "当兜底策略为固定回复时返回的文本",
    },
    fallbackPrompt: {
      label: "兜底 Prompt",
      desc: "当选择模型兜底时使用的提示模板",
    },
    advanced: {
      description: "配置问题改写、兜底策略等高级设置",
    },
    rewritePrompt: {
      system: "Rewrite System Prompt",
      user: "Rewrite User Prompt",
      desc: "控制问题改写的系统提示词",
      userDesc: "控制问题改写的用户提示词",
    },
    chatModel: {
      label: "LLM 模型",
      desc: "用于总结和摘要的大语言模型",
    },
    rerankModel: {
      label: "ReRank 模型",
      desc: "用于搜索结果重排序的模型（可选）",
    },
    contextTemplate: {
      label: "总结Prompt",
      desc: "用于普通模式下基于检索结果生成回答的Prompt模板",
      placeholder: "请输入检索结果总结的Prompt模板...",
      custom: "自定义模板",
      disabledHint: "当前使用系统默认总结 Prompt，开启自定义后才会应用下方内容。",
    },
    systemPrompt: {
      label: "系统Prompt",
      desc: "用于普通模式对话的系统级Prompt",
      placeholder: "请输入系统Prompt...",
      custom: "自定义 Prompt",
      disabledHint: "当前使用系统默认 Prompt，开启自定义后才会应用下方内容。",
    },
    temperature: {
      label: "温度参数",
      desc: "控制模型输出的随机性，0最确定，1最随机",
    },
    maxTokens: {
      label: "最大Token数",
      desc: "生成回答的最大Token数量",
    },
    resetSystemPrompt: {
      header: "恢复默认系统 Prompt",
      body: "确定要恢复为系统默认的系统 Prompt 吗？",
    },
    resetContextTemplate: {
      header: "恢复默认总结 Prompt",
      body: "确定要恢复为系统默认的总结 Prompt 吗？",
    },
    toasts: {
      chatModelSaved: "LLM 模型已保存",
      rerankModelSaved: "ReRank 模型已保存",
      contextTemplateSaved: "总结Prompt已保存",
      systemPromptSaved: "系统Prompt已保存",
      temperatureSaved: "温度参数已保存",
      maxTokensSaved: "最大Token数已保存",
      maxRoundsSaved: "历史轮数已保存",
      embeddingSaved: "Embedding TopK 已保存",
      keywordThresholdSaved: "关键词阈值已保存",
      vectorThresholdSaved: "向量阈值已保存",
      rerankTopKSaved: "ReRank TopK 已保存",
      rerankThresholdSaved: "ReRank 阈值已保存",
      enableRewriteSaved: "问题改写开关已保存",
      enableQueryExpansionSaved: "查询扩展策略已保存",
      fallbackStrategySaved: "兜底策略已保存",
      fallbackResponseSaved: "兜底回复已保存",
      fallbackPromptSaved: "兜底 Prompt 已保存",
      rewritePromptSystemSaved: "改写 System Prompt 已保存",
      rewritePromptUserSaved: "改写 User Prompt 已保存",
      customPromptEnabled: "已启用自定义 Prompt",
      defaultPromptEnabled: "已使用系统默认 Prompt",
      customContextTemplateEnabled: "已启用自定义总结 Prompt",
      defaultContextTemplateEnabled: "已使用系统默认总结 Prompt",
      resetSystemPromptSuccess: "已恢复为系统默认 Prompt",
      resetContextTemplateSuccess: "已恢复为系统默认总结 Prompt",
    },
  },
  // 新增：MCP 设置
  mcpSettings: {
    title: "MCP 服务管理",
    description:
      "管理外部 MCP (Model Context Protocol) 服务，在 Agent 模式下调用外部工具和资源",
    configuredServices: "已配置的服务",
    manageAndTest: "管理和测试 MCP 服务连接",
    addService: "添加服务",
    empty: "暂无 MCP 服务",
    addFirst: "添加第一个 MCP 服务",
    actions: {
      test: "测试连接",
    },
    toasts: {
      loadFailed: "加载 MCP 服务列表失败",
      enabled: "已启用 MCP 服务",
      disabled: "已禁用 MCP 服务",
      updateStateFailed: "更新 MCP 服务状态失败",
      testing: "正在测试 {name}...",
      noResponse: "测试失败：未收到服务器响应",
      testFailed: "测试 MCP 服务失败",
      deleted: "MCP 服务已删除",
      deleteFailed: "删除 MCP 服务失败",
    },
    deleteConfirmBody: '确定要删除 MCP 服务"{name}"吗？此操作无法撤销。',
    unnamed: "未命名",
  },

  // 新增：模型设置
  modelSettings: {
    title: "模型配置",
    description: "管理不同类型的 AI 模型，支持 Ollama 本地模型和远程 API",
    actions: {
      addModel: "添加模型",
      setDefault: "设为默认",
    },
    source: {
      remote: "Remote",
      openaiCompatible: "OpenAI兼容",
    },
    chat: {
      title: "对话模型",
      desc: "配置用于对话的大语言模型",
      empty: "暂无对话模型",
    },
    embedding: {
      title: "Embedding 模型",
      desc: "配置用于文本向量化的嵌入模型",
      empty: "暂无 Embedding 模型",
    },
    rerank: {
      title: "ReRank 模型",
      desc: "配置用于结果重排序的模型",
      empty: "暂无 ReRank 模型",
    },
    vllm: {
      title: "VLLM 视觉模型",
      desc: "配置用于视觉理解和多模态的视觉语言模型",
      empty: "暂无 VLLM 视觉模型",
    },
    toasts: {
      nameRequired: "模型名称不能为空",
      nameTooLong: "模型名称不能超过100个字符",
      baseUrlRequired: "Remote API 类型必须填写 Base URL",
      baseUrlInvalid: "Base URL 格式不正确，请输入有效的 URL",
      dimensionInvalid: "Embedding 模型必须填写有效的向量维度（128-4096）",
      updated: "模型已更新",
      added: "模型已添加",
      saveFailed: "保存模型失败",
      deleted: "模型已删除",
      deleteFailed: "删除模型失败",
      setDefault: "已设为默认模型",
      setDefaultFailed: "设置默认模型失败",
    },
    confirmDelete: "确定删除此模型吗？",
  },
  // 新增：Ollama 设置
  ollamaSettings: {
    title: "Ollama 配置",
    description: "管理本地 Ollama 服务，查看和下载模型",
    status: {
      label: "Ollama 服务状态",
      desc: '自动检测本地 Ollama 服务是否可用。如果服务未运行或地址配置错误，将显示"不可用"状态',
      testing: "检测中",
      available: "可用",
      unavailable: "不可用",
      untested: "未检测",
      retest: "重新检测",
    },
    address: {
      label: "服务地址",
      desc: "本地 Ollama 服务的 API 地址，由系统自动检测。如需修改，请在 .env 配置文件中设置",
      placeholder: "http://localhost:11434",
      failed: "连接失败，请检查 Ollama 是否运行或服务地址是否正确",
    },
    download: {
      title: "下载新模型",
      descPrefix: "输入模型名称下载，",
      browse: "浏览 Ollama 模型库",
      placeholder: "如：qwen2.5:0.5b",
      download: "下载",
      downloading: "正在下载: {name}",
    },
    installed: {
      title: "已下载的模型",
      desc: "已安装在 Ollama 中的模型列表",
      empty: "暂无已下载的模型",
    },
    toasts: {
      connected: "连接成功",
      connectFailed: "连接失败，请检查 Ollama 是否运行",
      listFailed: "获取模型列表失败",
      downloadFailed: "下载失败，请稍后重试",
      downloadStarted: "已开始下载模型 {name}",
      downloadCompleted: "模型 {name} 下载完成",
      progressFailed: "查询下载进度失败",
    },
  },
  // 新增：MCP 服务对话框
  mcpServiceDialog: {
    addTitle: "添加 MCP 服务",
    editTitle: "编辑 MCP 服务",
    name: "服务名称",
    namePlaceholder: "请输入服务名称",
    description: "描述",
    descriptionPlaceholder: "请输入服务描述",
    transportType: "传输类型",
    transport: {
      sse: "SSE (Server-Sent Events)",
      httpStreamable: "HTTP Streamable",
      stdio: "Stdio",
    },
    serviceUrl: "服务 URL",
    serviceUrlPlaceholder: "https://example.com/mcp",
    command: "命令",
    args: "参数",
    argPlaceholder: "参数 {index}",
    addArg: "添加参数",
    envVars: "环境变量",
    envKeyPlaceholder: "变量名",
    envValuePlaceholder: "变量值",
    addEnvVar: "添加环境变量",
    enableService: "启用服务",
    authConfig: "认证配置",
    apiKey: "API Key",
    bearerToken: "Bearer Token",
    optional: "可选",
    advancedConfig: "高级配置",
    timeoutSec: "超时时间(秒)",
    retryCount: "重试次数",
    retryDelaySec: "重试延迟(秒)",
    rules: {
      nameRequired: "请输入服务名称",
      transportRequired: "请选择传输类型",
      urlRequired: "请输入服务 URL",
      urlInvalid: "请输入有效的 URL",
      commandRequired: "请选择命令 (uvx 或 npx)",
      argsRequired: "请至少输入一个参数",
    },
    toasts: {
      created: "MCP 服务已创建",
      updated: "MCP 服务已更新",
      createFailed: "创建 MCP 服务失败",
      updateFailed: "更新 MCP 服务失败",
    },
  },
};
